package com.kuangshen.operation;

import java.util.HashMap;
import java.util.Map;

public class Demo1 {
    public static void main(String[] args) {
        Map<Object, Object> map = new HashMap<>();
        map.put("abc", "111");
        int h;
        // key.hashCode()：返回散列值也就是hashcode
        // ^ ：按位异或
        // >>>:无符号右移，忽略符号位，空位都以0补齐
        h = map.hashCode();
        System.out.println(h);
        System.out.println(Integer.toBinaryString(h));
        System.out.println(h >>> 16);
        System.out.println((map == null) ? 0 : (h = map.hashCode()) ^ (h >>> 16));

        int i = -1;
        System.out.println("初始数据： " + i);
        System.out.println("初始数据对应的二进制字符串： " + Integer.toBinaryString(i));
//        i <<= 10;
        i <<= 42;
        System.out.println("左移 10 位后的数据 " + i);
        System.out.println("左移 10 位后的数据对应的二进制字符 " + Integer.toBinaryString(i));

    }
}
